Kiến trúc VMware_ESXi

ESX chạy trên trực tiếp trên phần cứng thật (bare metal - không thông qua hệ điều hành nào [9] như các sản phẩm VMware khác.[10]). Nó bao gồm kernel riêng của nó: Một kernel Linux được khởi động trước,[11] sau đó được sử dụng để tải nhiều thành phần ảo hóa chuyên dụng, bao gồm ESX, còn được gọi là thành phần vmkernel.[12] Nhân Linux là máy ảo chính; nó được thực thi bởi Service Console. Ở thời gian chạy bình thường, vmkernel đang chạy trực tiếp trên máy tính thật và Service Console dựa trên Linux chạy như máy ảo đầu tiên. VMware đã bỏ qua ESX như phiên bản 4.1 và hiện sử dụng ESXi, không bao gồm nhân Linux.[13]

Vmkernel là một microkernel [14] với ba giao diện: phần cứng, máy khách (máy ảo) và Service Console.

Giao tiếp với phần cứng

Vmkernel điều khiển trực tiếp CPUbộ nhớ, dùng phương thức scan-before-execution (SBE) để xử lý các lệnh CPU đặc biệt hoặc đặc quyền [15][16] và bảng phân bổ tài nguyên hệ thống (system resource allocation table - SRAT) để theo dõi bộ nhớ được cấp phát.[17]

Truy cập vào những phần cứng khác (như mạng hoặc thiết bị lưu trữ) được thực hiện bằng các mô-đun. Ít nhất một số mô-đun được trích từ nhân Linux. Để truy cập các mô-đun này, một mô-đun bổ sung có tên vmklinux thực hiện việc giao tiếp với các mô-đun Linux. Theo VMWare, "Mô-đun này chứa lớp mô phỏng Linux được sử dụng bởi vmkernel." [18]

Vmkernel sử dụng các trình điều khiển thiết bị:[18]

  1. net/e100
  2. net/e1000
  3. net/e1000e
  4. net/bnx2
  5. net/tg3
  6. net/forcedeth
  7. net/pcnet32
  8. block/cciss
  9. scsi/adp94xx
  10. scsi/aic7xxx
  11. scsi/aic79xx
  12. scsi/ips
  13. scsi/lpfcdd-v732
  14. scsi/megaraid2
  15. scsi/mptscsi_2xx
  16. scsi/qla2200-v7.07
  17. scsi/megaraid_sas
  18. scsi/qla4010
  19. scsi/qla4022
  20. scsi/vmkiscsi
  21. scsi/aacraid_esx30
  22. scsi/lpfcdd-v7xx
  23. scsi/qla2200-v7x

Các trình điều khiển này hầu hết tương đương với các trình điều khiển được mô tả trong danh sách tương thích phần cứng của VMware.[19] Tất cả các mô-đun được cấp phép theo Giấy phép Công cộng GNU. Các lập trình viên đã điều chỉnh chúng để chạy với vmkernel: VMware Inc đã thay đổi việc tải mô-đun và một số thay đổi nhỏ khác.[18]

Service Console

Trong ESX (chứ không phải ESXi), Service Console là một hệ điều hành có mục đích quan trọng nhất là bootstrap cho kernel VMware, vmkernel và nữa là được sử dụng làm giao diện quản lý. Cả hai chức năng của Hệ điều hành Console này đều không được hỗ trợ từ phiên bản 5.0, vì VMware đã chuyển sang mô hình ESXi.[20]

Màn hình tím chết chóc (Purple Screen of Death)

Một màn hình chẩn đoán màu tím trên VMware ESX Server 3.0 Tập tin:VMware ESXi 4.1 PSOD.jpg Màn hình chẩn đoán màu tím trên VMware ESXi 4.1

Trong trường hợp xảy ra lỗi phần cứng, vmkernel có thể bắt lỗi Machine Check Exception.[21] Kết quả lỗi được hiển thị trên một màn hình chẩn đoán lỗi màu tím. Nó thường được gọi là màn hình chẩn đoán tím hoặc màn hình tím chết chóc (PSoD, tương tự như Màn hình xanh chết chóc (BSoD)).

Khi hiển thị màn hình chẩn đoán tím, vmkernel hiển thị thông tin gỡ rối vào phân vùng core dump. Thông tin này, cùng với các mã lỗi được hiển thị trên màn hình chẩn đoán tím có thể được hỗ trợ bởi VMware để xác định nguyên nhân của sự cố.

Tài liệu tham khảo

WikiPedia: VMware_ESXi http://www.crn.com/news/virtualization/232900547/v... http://en.community.dell.com/techcenter/systems-ma... http://www.veeam.com/company/about.html?ad=menu http://www.veeam.com/vmware-esx-monitoring-hp-oper... http://vmfaq.com/index.php?View=entry&EntryID=32 http://blogs.vmware.com/esxi/2009/06/esxi-vs-esx-a... http://blogs.vmware.com/uptime/2011/02/vmotion-wha... http://kb.vmware.com/kb/1005184%7Ctitle= http://kb.vmware.com/kb/1006095 http://kb.vmware.com/kb/2005377